/*
  学习目标：映射类型
  作用: 从已有的数据结构中,生成新的数据结构
  语法: [key  in 字面量联合]
*/

type MyConfig = {
  baseUrl: string;
  cdn: string;
};

type MyReadonly<T> = {
  readonly [key in keyof T]: string;
  // 类似for  in 循环, 会将所有的键复制一份
};

const config: MyReadonly<MyConfig> = {
  baseUrl: 'xxx',
  cdn: 'yy',
};

// 此时
// config.baseUrl = 'zxzx';
// config.cdn = 'zxzx';
